// 在谷歌浏览器中，使用element-plus的一些表单组件时，会报如下错误：
// [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as
// 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
//
// // （将非被动事件侦听器添加到滚动阻止的“touchstart”事件中。请考虑将事件处理程序标记为“被动”，以提高页面的响应能力）

// 当应用中用到滚动事件scroll、滚轮事件wheel或者移动端touchstart/touchmove/touchend等事件时会报这样的警告，
// 通过排查我的项目中是在使用了：TimePicker 时间选择器组件、DatePicker 日期选择器组件和Input Number 数字输入框等组件时会报这样的错误。
//
// 网上提供了两种解决方案是，我们先说第一种：安装default-passive-events插件。

// 安装完成后，确实是不再警告了。但是问题并没有结束，当我们再使用el-input组件时，如果带有clearable 清空属性时，
// 当点击清空图标时，会报Unable to preventDefault inside passive event listener invocation的错误
// （无法在被动事件侦听器调用中防止Default的错误）：

// https://www.qietujiang.com/elementplus-cuowu-chuli-jilu.html


;(function () {
    if (typeof EventTarget !== 'undefined') {
        const func = EventTarget.prototype.addEventListener;
        EventTarget.prototype.addEventListener = function (type, fn, capture) {
            this.func = func;
            if (typeof capture !== 'boolean') {
                capture = capture || {};
                capture.passive = false;
            }
            this.func(type, fn, capture);
        };
    }
})();
